package com.nativetalk.service.teacher.update;

import com.nativetalk.base.RetInfo;
import com.nativetalk.bean.teacher.*;

import java.io.IOException;
import java.util.Map;

/**
 * Created by lizhun on 16/1/8.
 */
public interface TeacherUpdateService {
    /**
     * @Purpose  更新教师信息
     * @version  1.0
     * @author   lizhun
     * @param    tdNtTeacherResult
     * @return   RetInfo
     */
    public RetInfo updateTeacher(TdNtTeacherResult tdNtTeacherResult);
    /**
     * @Purpose  修改密码
     * @version  1.0
     * @author   lizhun
     * @param    tdNtTeacherPsd
     * @param    tdNtTeacherResult
     * @return   RetInfo
     */
    public RetInfo updateTeacherPsd(TdNtTeacherPsd tdNtTeacherPsd, TdNtTeacherResult tdNtTeacherResult);
    /**
     * @Purpose  更新用户开关
     * @version  1.0
     * @author   lizhun
     * @param    tdNtTeacherState
     * @return   RetInfo
     */
    public RetInfo updateTeacherState(TdNtTeacherState tdNtTeacherState);
    /**
     * @Purpose  更新用户开关(新版)
     * @version  1.0
     * @author   lizhun
     * @param    tdNtTeacherState
     * @return   RetInfo
     */
    public RetInfo updateTeacherStateTwo(TdNtTeacherState tdNtTeacherState);
    /**
     * @Purpose  更新用户开关(新版)
     * @version  1.0
     * @author   wuyuanhui
     * @param    tdNtTeacherState
     * @return   RetInfo
     */
    public RetInfo updateTeacherStateThree(TdNtTeacherState tdNtTeacherState);
    /**
     * @Purpose  修改教师语音简历
     * @version  1.0
     * @author   wuyuanhui
     * @param    tdNtTeacherSound
     * @return   RetInfo
     */
    public RetInfo updateTeacherSound(TdNtTeacherSound tdNtTeacherSound, TdNtTeacherResult tdNtTeacherResult) throws IOException;
    /**
     * @Purpose  修改教师认证头像
     * @version  1.0
     * @author   wuyuanhui
     * @param    tdNtTeacherPortrait
     * @return   RetInfo
     */
    public RetInfo updateTeacherPortrait(TdNtTeacherPortrait tdNtTeacherPortrait, TdNtTeacherResult tdNtTeacherResult) throws IOException;
    /**
     * @Purpose  修改教师收藏/未收藏
     * @version  1.0
     * @author   wuyuanhui
     * @param    obj
     * @return   RetInfo
     */
    public RetInfo updateTeacherCollect(Map<String, Object> obj);
    /**
     * @Purpose  上线提醒
     * @version  1.0
     * @author   wuyuanhui
     * @param    obj
     * @return   RetInfo
     */
    public RetInfo updateTeacherOnline(Map<String, Object> obj);

    void updateTeacherJustTalkUserUri(Integer tea_id, String justTalkUserUri);
}
